package linked_list;

/**
 * @author 老顾
 * @title: List
 * @projectName java-restudy
 * @email: 1437594522@qq.com
 * @date 2022/11/3 15:19
 */
public interface List<E> {

    /**
     * 增加节点
     * @param e
     * @return
     */
    boolean add(E e);

    /**
     * 增加头节点
     * @param e
     * @return
     */
    boolean addFirst(E e);

    /**
     * 增加尾节点
     * @param e
     * @return
     */
    boolean addLast(E e);

    /**
     * 删除节点
     * @param o
     * @return
     */
    boolean remove(Object o);

    /**
     * 获取节点
     * @param index
     * @return
     */
    E get(int index);

    /**
     * 输出链表
     */
    void printLinkedList();
}
